"""
list列表的循环遍历(两种方式 1.while 2.for)
    一、循环控制上
        · while循环可以自定循环条件，并自行控制
        · for循环不可以自定循环条件，只可以一个个的从容器中取出数据
    二、循环次数上
        · while循环可以通过条件控制做到无限次循环
        · for循环理论上不能控制循环次数，因为容器的容量是有限的
    三、使用场景上
        · while循环适用于任何想要循环的场景
        · for循环适用于遍历数据容器的场景或简单固定次数的循环场景
"""


def list_while_func(my_list):
    """
    while方式循环遍历list列表
    :param my_list: 列表参数
    :return: None
    """
    # 循环控制变量由下标索引控制，默认为0
    # 每次循环下标索引加1
    # 循环的判断条件：下标索引 < 列表长度

    # 定义一个变量记录下标索引 初始值为0
    index = 0
    while index < len(my_list):
        # 通过index取出对应下标的元
        element = my_list[index]
        print(f"列表下标索引{index}位置的元素为{element}")
        # 每次循环结束，记录索引位置的变量+1
        index += 1


def list_for_func(my_list):
    """
    for循环遍历list列表
    :param my_list: 列表参数
    :return: None
    """
    # for 临时变量 in 数据容器
    for element in my_list:
        print(f"列表my_list元素为：{element}")


# 测试调用一下list_while_func函数
my_list = [21, 22, 30, 25]
list_while_func(my_list)

# 测试调用一下list_for_func函数
print("-------------------------------")
my_list = ["caoCao", "liuBei", "guanYu"]
list_for_func(my_list)
